package ScatteredTest.manager;

import ScatteredTest.bean.RequiredControl;

/**
 * 规则需要枚举
 *
 * @ClassName RequiredRulesEnum
 * @Description TODO
 * @Author ZhaoKai
 * @Date 2021-11-2513:30
 * @Version 1.0
 **/
public enum RequiredRulesEnum {
    /**
     * 第一个
     */
    FIRST{
        @Override
        public RequiredControl getRequired() {
            RequiredControl requiredControl=new RequiredControl();
            requiredControl.setRiskDepartmentReviewer(Boolean.TRUE);
            requiredControl.setRiskDepartmentHead(Boolean.TRUE);
            requiredControl.setDepartmentLeader(Boolean.TRUE);
            requiredControl.setRiskDepartmentLeader(Boolean.TRUE);
            requiredControl.setAssetDisposalCommittee(Boolean.TRUE);
            requiredControl.setGeneralManager(Boolean.TRUE);
            requiredControl.setChairman(Boolean.TRUE);
            System.out.println("FIRST");
            return requiredControl;
        }
    },
    /**
     * 第二个
     */
    SECOND{
        @Override
        public RequiredControl getRequired() {
            RequiredControl requiredControl=new RequiredControl();
            requiredControl.setRiskDepartmentReviewer(Boolean.TRUE);
            requiredControl.setRiskDepartmentHead(Boolean.TRUE);
            requiredControl.setDepartmentLeader(Boolean.TRUE);
            requiredControl.setRiskDepartmentLeader(Boolean.TRUE);
            requiredControl.setAssetDisposalCommittee(Boolean.TRUE);
            System.out.println("SECOND");
            return requiredControl;
        }
    },
    /**
     * 第三
     */
    THIRD{
        @Override
        public RequiredControl getRequired() {
            RequiredControl requiredControl=new RequiredControl();
            requiredControl.setRiskDepartmentReviewer(Boolean.TRUE);
            requiredControl.setRiskDepartmentHead(Boolean.TRUE);
            requiredControl.setDepartmentLeader(Boolean.TRUE);
            requiredControl.setRiskDepartmentLeader(Boolean.TRUE);
            System.out.println("THIRD");
            return requiredControl;
        }
    },
    /**
     * 第四
     */
    FOURTH{
        @Override
        public RequiredControl getRequired() {
            RequiredControl requiredControl=new RequiredControl();
            requiredControl.setRiskDepartmentReviewer(Boolean.TRUE);
            requiredControl.setRiskDepartmentHead(Boolean.TRUE);
            System.out.println("FOURTH");
            return requiredControl;
        }
    },
    /**
     * 第五
     */
    FIFTH{
        @Override
        public RequiredControl getRequired() {
            System.out.println("FIFTH");
            return new RequiredControl();
        }
    };

    /**
     * 获取要求
     *
     * @return {@code RequiredControl}
     */
    public abstract RequiredControl getRequired();
}
